home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Plus Extra 1996 #2
/
Amiga Plus CD - 1996 - No. 2 Extra.iso
/
clarissa1_1-demo
/
macros
/
kapillarfade.clssa
< prev
next >
Wrap
Text File
|
1995-01-26
|
4KB
|
117 lines
/***********************************************************************
GADGET: "'Kapillar Fade'" "6" AUTO TYP: "?"
$DAT >>KapillarFade.clssa<< 30.09.1992 - (C) ProDAD Holger Burkarth
20.01.1995 - (C) ProDAD Michael Christoph
Der Fade-Macro erzeugt einen Blendeffekt in eine definierbare Farbe.
Oft wird ein Fade nur in Verbindung mit der Farbe Schwarz benötigz.
Hierzu stellt der Macro eine Abkürzung zur Verfügung.
Möchte man aber eine Bezugsfarbe verwendet, so muß der User die Farbnummer
eingeben. Eine gezielte Auswahl der Farbnummer kann im Farbrequester
vorgenommen werden.
Der Unterschied zum normalen Fade besteht darin, daß nur eine Farbe
verändert wird. Bei der Eingabe der Kapillarfarbe gelten die gleichen
Regeln wie bei der Bezugsfarbe.
************************************************************************/
Options Results
Address clariSSA
FailAt 10
AltFail=RESULT
GetArea
PARSE VAR RESULT . "FROM" von "TO" bis .
von=Strip(von)
Anzahl=bis-von
IF Anzahl>1 THEN DO
DO FOREVER
GetAnimInfo
PARSE VAR RESULT . "FORMAT" x y t "VIEWMODE" ViewMode .
AnzFarben=2**t - 1
MSRequester "TITLE '*** Kapillar - Fade ***'",
"''",
"'Wählen Sie bitte die Faderichtung aus.'",
"'IN bedeutet, daß sich die Farbe mit'",
"'laufender Anim normalisieren.'",
"PTEXT 'Fade IN'",
"'Fade OUT'"
IF RC~=0 THEN LEAVE
FadeIN=RESULT
COLRequest "Register 0 TITLE '*** Kapillar - Fade ***''''Kapillarfarbe festlegen.'"
IF RC~=0 THEN LEAVE
KapFarbe=RESULT
MSRequester "TITLE '*** Kapillar - Fade ***'",
"''",
"'Bezugsfarbe zur Fadebearbeitung wählen?'",
"PTEXT 'Bezugsfarbe wählen'",
"'Bezugsfarbe schwarz'"
IF RC~=0 THEN LEAVE
IF RESULT=2 THEN DO
BOOLRequest "'Animationsfarben ändern?''Anim: Master''<< von "von" bis "bis" >>'"
IF RC~=0 | RESULT="NO" THEN LEAVE
RequestStatus OFF
DO UNTIL von>bis
IF FadeIN=2 THEN fa=(bis-von)/Anzahl
ELSE fa=(1-(bis-von)/Anzahl)
ViewFrame COPS von
IF RC~=0 THEN LEAVE
GetColor KapFarbe
PARSE VAR RESULT x r g b
SetColor x r*fa g*fa b*fa
Record COPS
IF RC~=0 THEN LEAVE
von=von+1
END
END
ELSE DO
COLRequest "Register 0 TITLE '*** Kapillar - Fade ***''''Bezugsfarbe festlegen.'"
IF RC~=0 THEN LEAVE
GetColor BezFarbe
PARSE VAR RESULT x BezR BezG BezB
BOOLRequest "'Animationsfarben ändern?''Anim: Master''<< von "von" bis "bis" >>'"
IF RC~=0 | RESULT="NO" THEN LEAVE
RequestStatus OFF
DO UNTIL von>bis
IF FadeIN=2 THEN fa=(1-(bis-von)/Anzahl)
ELSE fa=(bis-von)/Anzahl
ViewFrame COPS von
IF RC~=0 THEN LEAVE
GetColor KapFarbe
PARSE VAR RESULT x r g b
r=r+(BezR-r)*fa
g=g+(BezG-g)*fa
b=b+(BezB-b)*fa
SetColor x r g b
Record COPS
IF RC~=0 THEN LEAVE
von=von+1
END
END
RequestStatus ON
LEAVE
END
END
ELSE Message "'Für einen Fade-Effekt müssen''min. 2 Frames ausgewählt werden.'"
FailAt AltFail
exit